Solver specification

The solver specification defines its type and parameters. WOLF has two solvers, located in the plugin core: SolverCeres (only available if WOLF was built with Ceres, see dependencies) and SolverEigen. If the user is not familiar with Ceres, it is recommended to use the configuration used in the provided demos, which are already tuned for most problems.

Note

Remember that the YAML templates contains all the parameters of each class and a brief doc. You can start from the templates and modify them to suit your needs. See more information in the YAML schema section.

The following is the part of the WOLF ROS2 application example configuration file, containing the solver specification.

solver:
  follow: "solver.yaml"

Note that the parameters are contained in another file to be reused in other applications.

type: SolverCeres
plugin: core

minimizer: "levenberg_marquardt"
interrupt_on_problem_change: false
max_num_iterations: 10
function_tolerance: 1e-8
gradient_tolerance: 1e-8
parameter_tolerance: 1e-8
use_nonmonotonic_steps: false
period: 0.1
n_threads: 2
compute_cov: false
verbose: 0